<!doctype html>
<html class="default no-js">
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>OpineRequest | opine</title>
	<meta name="description" content="Documentation for opine">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
	<div class="tsd-page-toolbar">
		<div class="container">
			<div class="table-wrap">
				<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
					<div class="field">
						<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
						<input id="tsd-search-field" type="text" />
					</div>
					<ul class="results">
						<li class="state loading">Preparing search index...</li>
						<li class="state failure">The search index is not available</li>
					</ul>
					<a href="../index.html" class="title">opine</a>
				</div>
				<div class="table-cell" id="tsd-widgets">
					<div id="tsd-filter">
						<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
						<div class="tsd-filter-group">
							<div class="tsd-select" id="tsd-filter-visibility">
								<span class="tsd-select-label">All</span>
								<ul class="tsd-select-list">
									<li data-value="public">Public</li>
									<li data-value="protected">Public/Protected</li>
									<li data-value="private" class="selected">All</li>
								</ul>
							</div>
							<input type="checkbox" id="tsd-filter-inherited" checked />
							<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
							<input type="checkbox" id="tsd-filter-only-exported" />
							<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
						</div>
					</div>
					<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
				</div>
			</div>
		</div>
	</div>
	<div class="tsd-page-title">
		<div class="container">
			<ul class="tsd-breadcrumb">
				<li>
					<a href="../globals.html">Globals</a>
				</li>
				<li>
					<a href="../modules/_types_.html">&quot;types&quot;</a>
				</li>
				<li>
					<a href="_types_.opinerequest.html">OpineRequest</a>
				</li>
			</ul>
			<h1>Interface OpineRequest&lt;P, ResBody, ReqQuery&gt;</h1>
		</div>
	</div>
</header>
<div class="container container-main">
	<div class="row">
		<div class="col-8 col-content">
			<section class="tsd-panel tsd-comment">
				<div class="tsd-comment tsd-typography">
					<dl class="tsd-comment-tags">
						<dt>see</dt>
						<dd><p><a href="https://expressjs.com/en/api.html#req.params">https://expressjs.com/en/api.html#req.params</a></p>
						</dd>
						<dt>example</dt>
						<dd><pre><code>app.get(<span class="hljs-string">&#x27;/user/:id&#x27;</span>, <span class="hljs-function"><span class="hljs-params">(req, res)</span> =&gt;</span> res.send(req.params.id)); <span class="hljs-regexp">//</span> implicitly `<span class="javascript">ParamsDictionary</span>`
app.get&lt;ParamsArray&gt;(<span class="hljs-regexp">/user\/(.*)/</span>, <span class="hljs-function"><span class="hljs-params">(req, res)</span> =&gt;</span> res.send(req.params[<span class="hljs-number">0</span>]));
app.get&lt;ParamsArray&gt;(<span class="hljs-string">&#x27;/user/*&#x27;</span>, <span class="hljs-function"><span class="hljs-params">(req, res)</span> =&gt;</span> res.send(req.params[<span class="hljs-number">0</span>]));
</code></pre>
						</dd>
					</dl>
				</div>
			</section>
			<section class="tsd-panel tsd-type-parameters">
				<h3>Type parameters</h3>
				<ul class="tsd-type-parameters">
					<li>
						<h4>P<span class="tsd-signature-symbol">: </span><a href="../modules/_types_.html#params" class="tsd-signature-type">Params</a> = <span class="tsd-signature-type">ParamsDictionary</span></h4>
						<div class="tsd-comment tsd-typography">
							<div class="lead">
								<p>For most requests, this should be <code>ParamsDictionary</code>, but if you&#39;re
									using this in a route handler for a route that uses a <code>RegExp</code> or a wildcard
									<code>string</code> path (e.g. <code>&#39;/user/*&#39;</code>), then <code>req.params</code> will be an array, in
								which case you should use <code>ParamsArray</code> instead.</p>
							</div>
						</div>
					</li>
					<li>
						<h4>ResBody = <span class="tsd-signature-type">any</span></h4>
					</li>
					<li>
						<h4>ReqQuery = <span class="tsd-signature-type">any</span></h4>
					</li>
				</ul>
			</section>
			<section class="tsd-panel tsd-hierarchy">
				<h3>Hierarchy</h3>
				<ul class="tsd-hierarchy">
					<li>
						<a href="_types_.__global.opine.request.html" class="tsd-signature-type">Request</a>
						<ul class="tsd-hierarchy">
							<li>
								<span class="target">OpineRequest</span>
							</li>
						</ul>
					</li>
				</ul>
			</section>
			<section class="tsd-panel">
				<h3>Implemented by</h3>
				<ul class="tsd-hierarchy">
					<li><a href="../classes/_request_.wrappedrequest.html" class="tsd-signature-type">WrappedRequest</a></li>
				</ul>
			</section>
			<section class="tsd-panel-group tsd-index-group">
				<h2>Index</h2>
				<section class="tsd-panel tsd-index-panel">
					<div class="tsd-index-content">
						<section class="tsd-index-section ">
							<h3>Properties</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#_parsedbody" class="tsd-kind-icon">_parsed<wbr>Body</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#_parsedoriginalurl" class="tsd-kind-icon">_parsed<wbr>Original<wbr>Url</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#_parsedurl" class="tsd-kind-icon">_parsed<wbr>Url</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#app" class="tsd-kind-icon">app</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#baseurl" class="tsd-kind-icon">base<wbr>Url</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#body" class="tsd-kind-icon">body</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#conn" class="tsd-kind-icon">conn</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#finalresponse" class="tsd-kind-icon">final<wbr>Response</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#fresh" class="tsd-kind-icon">fresh</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#get" class="tsd-kind-icon">get</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#headers" class="tsd-kind-icon">headers</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#hostname" class="tsd-kind-icon">hostname</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#ip" class="tsd-kind-icon">ip</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#ips" class="tsd-kind-icon">ips</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#method" class="tsd-kind-icon">method</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#next" class="tsd-kind-icon">next</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#originalurl" class="tsd-kind-icon">original<wbr>Url</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#param" class="tsd-kind-icon">param</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#params" class="tsd-kind-icon">params</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#parsedbody" class="tsd-kind-icon">parsed<wbr>Body</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#path" class="tsd-kind-icon">path</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#proto" class="tsd-kind-icon">proto</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#protocol" class="tsd-kind-icon">protocol</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#query" class="tsd-kind-icon">query</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#raw" class="tsd-kind-icon">raw</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#res" class="tsd-kind-icon">res</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#route" class="tsd-kind-icon">route</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#secure" class="tsd-kind-icon">secure</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#stale" class="tsd-kind-icon">stale</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#subdomains" class="tsd-kind-icon">subdomains</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#url" class="tsd-kind-icon">url</a></li>
								<li class="tsd-kind-property tsd-parent-kind-interface"><a href="_types_.opinerequest.html#xhr" class="tsd-kind-icon">xhr</a></li>
							</ul>
						</section>
						<section class="tsd-index-section ">
							<h3>Methods</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#accepts" class="tsd-kind-icon">accepts</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#acceptscharsets" class="tsd-kind-icon">accepts<wbr>Charsets</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#acceptsencodings" class="tsd-kind-icon">accepts<wbr>Encodings</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#acceptslanguages" class="tsd-kind-icon">accepts<wbr>Languages</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#is" class="tsd-kind-icon">is</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#range" class="tsd-kind-icon">range</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#respond" class="tsd-kind-icon">respond</a></li>
								<li class="tsd-kind-method tsd-parent-kind-interface"><a href="_types_.opinerequest.html#upgrade" class="tsd-kind-icon">upgrade</a></li>
							</ul>
						</section>
					</div>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group ">
				<h2>Properties</h2>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="_parsedbody" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> _parsed<wbr>Body</h3>
					<div class="tsd-signature tsd-kind-icon">_parsed<wbr>Body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L596">home/runner/work/opine/opine/src/types.ts:596</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>After body parsers, OpineRequest will contain <code>_parsedBody</code> boolean property
								dictating that the body has been parsed.
							See: opine/src/middleware/bodyParser/</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="_parsedoriginalurl" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> _parsed<wbr>Original<wbr>Url</h3>
					<div class="tsd-signature tsd-kind-icon">_parsed<wbr>Original<wbr>Url<span class="tsd-signature-symbol">:</span> <a href="../modules/_types_.html#parsedurl" class="tsd-signature-type">ParsedURL</a></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L615">home/runner/work/opine/opine/src/types.ts:615</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>After calling <code>originalUrl</code> on the request object, the original url
							is memoization by storing onto the <code>_parsedOriginalUrl</code> property.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="_parsedurl" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> _parsed<wbr>Url</h3>
					<div class="tsd-signature tsd-kind-icon">_parsed<wbr>Url<span class="tsd-signature-symbol">:</span> <a href="../modules/_types_.html#parsedurl" class="tsd-signature-type">ParsedURL</a></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L609">home/runner/work/opine/opine/src/types.ts:609</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>After calling <code>parseUrl</code> on the request object, the parsed url
							is memoization by storing onto the <code>_parsedUrl</code> property.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="app" class="tsd-anchor"></a>
					<h3>app</h3>
					<div class="tsd-signature tsd-kind-icon">app<span class="tsd-signature-symbol">:</span> <a href="_types_.application.html" class="tsd-signature-type">Application</a></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L582">home/runner/work/opine/opine/src/types.ts:582</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="baseurl" class="tsd-anchor"></a>
					<h3>base<wbr>Url</h3>
					<div class="tsd-signature tsd-kind-icon">base<wbr>Url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L575">home/runner/work/opine/opine/src/types.ts:575</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="body" class="tsd-anchor"></a>
					<h3>body</h3>
					<div class="tsd-signature tsd-kind-icon">body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L556">home/runner/work/opine/opine/src/types.ts:556</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Body of request.</p>
						</div>
						<p>If the body has been passed such that a <code>parsedBody</code>
							property is defined, this returns the <code>parsedBody</code>
						value.</p>
						<p>To always get the raw body value, use the <code>raw</code>
						property.</p>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="conn" class="tsd-anchor"></a>
					<h3>conn</h3>
					<div class="tsd-signature tsd-kind-icon">conn<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ConnInfo</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L580">home/runner/work/opine/opine/src/types.ts:580</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="finalresponse" class="tsd-anchor"></a>
					<h3>final<wbr>Response</h3>
					<div class="tsd-signature tsd-kind-icon">final<wbr>Response<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Response</span><span class="tsd-signature-symbol">&gt;</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L628">home/runner/work/opine/opine/src/types.ts:628</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Returns a promise that resolves to the response to the request.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="fresh" class="tsd-anchor"></a>
					<h3>fresh</h3>
					<div class="tsd-signature tsd-kind-icon">fresh<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L532">home/runner/work/opine/opine/src/types.ts:532</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Check if the request is fresh, aka
								Last-Modified and/or the ETag
							still match.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="get" class="tsd-anchor"></a>
					<h3>get</h3>
					<div class="tsd-signature tsd-kind-icon">get<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L408">home/runner/work/opine/opine/src/types.ts:408</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Return request header.</p>
						</div>
						<p>The <code>Referrer</code> header field is special-cased,
						both <code>Referrer</code> and <code>Referer</code> are interchangeable.</p>
						<p>Examples:</p>
						<pre><code>req.get(<span class="hljs-string">&#x27;Content-Type&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;text/plain&quot;</span>

req.get(<span class="hljs-string">&#x27;content-type&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;text/plain&quot;</span>

req.get(<span class="hljs-string">&#x27;Something&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; undefined
</code></pre>
					</div>
					<div class="tsd-type-declaration">
						<h4>Type declaration</h4>
						<ul class="tsd-parameters">
							<li class="tsd-parameter-signature">
								<ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property">
									<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<h4 class="tsd-parameters-title">Parameters</h4>
										<ul class="tsd-parameters">
											<li>
												<h5>name: <span class="tsd-signature-type">string</span></h5>
											</li>
										</ul>
										<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4>
									</li>
								</ul>
							</li>
						</ul>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="headers" class="tsd-anchor"></a>
					<h3>headers</h3>
					<div class="tsd-signature tsd-kind-icon">headers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Headers</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L578">home/runner/work/opine/opine/src/types.ts:578</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="hostname" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> hostname</h3>
					<div class="tsd-signature tsd-kind-icon">hostname<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L525">home/runner/work/opine/opine/src/types.ts:525</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Parse the &quot;Host&quot; header field hostname.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="ip" class="tsd-anchor"></a>
					<h3>ip</h3>
					<div class="tsd-signature tsd-kind-icon">ip<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L492">home/runner/work/opine/opine/src/types.ts:492</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Return the remote address, or when
								&quot;trust proxy&quot; is <code>true</code> return
							the upstream addr.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="ips" class="tsd-anchor"></a>
					<h3>ips</h3>
					<div class="tsd-signature tsd-kind-icon">ips<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L502">home/runner/work/opine/opine/src/types.ts:502</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>When &quot;trust proxy&quot; is <code>true</code>, parse
							the &quot;X-Forwarded-For&quot; ip address list.</p>
						</div>
						<p>For example if the value were &quot;client, proxy1, proxy2&quot;
							you would receive the array <code>[&quot;client&quot;, &quot;proxy1&quot;, &quot;proxy2&quot;]</code>
						where &quot;proxy2&quot; is the furthest down-stream.</p>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="method" class="tsd-anchor"></a>
					<h3>method</h3>
					<div class="tsd-signature tsd-kind-icon">method<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L563">home/runner/work/opine/opine/src/types.ts:563</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="next" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> next</h3>
					<div class="tsd-signature tsd-kind-icon">next<span class="tsd-signature-symbol">:</span> <a href="_types_.nextfunction.html" class="tsd-signature-type">NextFunction</a></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L589">home/runner/work/opine/opine/src/types.ts:589</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="originalurl" class="tsd-anchor"></a>
					<h3>original<wbr>Url</h3>
					<div class="tsd-signature tsd-kind-icon">original<wbr>Url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L571">home/runner/work/opine/opine/src/types.ts:571</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="param" class="tsd-anchor"></a>
					<h3>param</h3>
					<div class="tsd-signature tsd-kind-icon">param<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, defaultValue<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L409">home/runner/work/opine/opine/src/types.ts:409</a></li>
						</ul>
					</aside>
					<div class="tsd-type-declaration">
						<h4>Type declaration</h4>
						<ul class="tsd-parameters">
							<li class="tsd-parameter-signature">
								<ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property">
									<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, defaultValue<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<h4 class="tsd-parameters-title">Parameters</h4>
										<ul class="tsd-parameters">
											<li>
												<h5>name: <span class="tsd-signature-type">string</span></h5>
											</li>
											<li>
												<h5><span class="tsd-flag ts-flagOptional">Optional</span> defaultValue: <span class="tsd-signature-type">string</span></h5>
											</li>
										</ul>
										<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4>
									</li>
								</ul>
							</li>
						</ul>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="params" class="tsd-anchor"></a>
					<h3>params</h3>
					<div class="tsd-signature tsd-kind-icon">params<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">P</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L565">home/runner/work/opine/opine/src/types.ts:565</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="parsedbody" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> parsed<wbr>Body</h3>
					<div class="tsd-signature tsd-kind-icon">parsed<wbr>Body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L603">home/runner/work/opine/opine/src/types.ts:603</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>After body parsers, OpineRequest will contain parsedBody property
								containing the parsed body.
							See: opine/src/middleware/bodyParser/</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="path" class="tsd-anchor"></a>
					<h3>path</h3>
					<div class="tsd-signature tsd-kind-icon">path<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L520">home/runner/work/opine/opine/src/types.ts:520</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Returns the pathname of the URL.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="proto" class="tsd-anchor"></a>
					<h3>proto</h3>
					<div class="tsd-signature tsd-kind-icon">proto<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L577">home/runner/work/opine/opine/src/types.ts:577</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="protocol" class="tsd-anchor"></a>
					<h3>protocol</h3>
					<div class="tsd-signature tsd-kind-icon">protocol<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L478">home/runner/work/opine/opine/src/types.ts:478</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Return the protocol string &quot;http&quot; or &quot;https&quot;
								when requested with TLS. When the &quot;trust proxy&quot;
								setting is enabled the &quot;X-Forwarded-Proto&quot; header
								field will be trusted. If you&#39;re running behind
								a reverse proxy that supplies https for you this
							may be enabled.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="query" class="tsd-anchor"></a>
					<h3>query</h3>
					<div class="tsd-signature tsd-kind-icon">query<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ReqQuery</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L567">home/runner/work/opine/opine/src/types.ts:567</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="raw" class="tsd-anchor"></a>
					<h3>raw</h3>
					<div class="tsd-signature tsd-kind-icon">raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Deno.Reader</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L561">home/runner/work/opine/opine/src/types.ts:561</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Raw body of request.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="res" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagOptional">Optional</span> res</h3>
					<div class="tsd-signature tsd-kind-icon">res<span class="tsd-signature-symbol">:</span> <a href="_types_.opineresponse.html" class="tsd-signature-type">OpineResponse</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ResBody</span><span class="tsd-signature-symbol">&gt;</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L588">home/runner/work/opine/opine/src/types.ts:588</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>After middleware.init executed, OpineRequest will contain res and next properties.
							See: opine/src/middleware/init.ts</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="route" class="tsd-anchor"></a>
					<h3>route</h3>
					<div class="tsd-signature tsd-kind-icon">route<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L569">home/runner/work/opine/opine/src/types.ts:569</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="secure" class="tsd-anchor"></a>
					<h3>secure</h3>
					<div class="tsd-signature tsd-kind-icon">secure<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L485">home/runner/work/opine/opine/src/types.ts:485</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Short-hand for:</p>
						</div>
						<p>   req.protocol == &#39;https&#39;</p>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="stale" class="tsd-anchor"></a>
					<h3>stale</h3>
					<div class="tsd-signature tsd-kind-icon">stale<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L539">home/runner/work/opine/opine/src/types.ts:539</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Check if the request is stale, aka
								&quot;Last-Modified&quot; and / or the &quot;ETag&quot; for the
							resource has changed.</p>
						</div>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="subdomains" class="tsd-anchor"></a>
					<h3>subdomains</h3>
					<div class="tsd-signature tsd-kind-icon">subdomains<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L515">home/runner/work/opine/opine/src/types.ts:515</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Return subdomains as an array.</p>
						</div>
						<p>Subdomains are the dot-separated parts of the host before the main domain of
							the app. By default, the domain of the app is assumed to be the last two
						parts of the host. This can be changed by setting &quot;subdomain offset&quot;.</p>
						<p>For example, if the domain is &quot;deno.dinosaurs.example.com&quot;:
							If &quot;subdomain offset&quot; is not set, req.subdomains is <code>[&quot;dinosaurs&quot;, &quot;deno&quot;]</code>.
						If &quot;subdomain offset&quot; is 3, req.subdomains is <code>[&quot;deno&quot;]</code>.</p>
					</div>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="url" class="tsd-anchor"></a>
					<h3>url</h3>
					<div class="tsd-signature tsd-kind-icon">url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L573">home/runner/work/opine/opine/src/types.ts:573</a></li>
						</ul>
					</aside>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
					<a name="xhr" class="tsd-anchor"></a>
					<h3>xhr</h3>
					<div class="tsd-signature tsd-kind-icon">xhr<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
					<aside class="tsd-sources">
						<ul>
							<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L544">home/runner/work/opine/opine/src/types.ts:544</a></li>
						</ul>
					</aside>
					<div class="tsd-comment tsd-typography">
						<div class="lead">
							<p>Check if the request was an <em>XMLHttpRequest</em>.</p>
						</div>
					</div>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group ">
				<h2>Methods</h2>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="accepts" class="tsd-anchor"></a>
					<h3>accepts</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">accepts<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<span class="tsd-signature-symbol">(</span>type<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<span class="tsd-signature-symbol">(</span>type<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span>type<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L350">home/runner/work/opine/opine/src/types.ts:350</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Check if the given <code>type(s)</code> is acceptable, returning
										the best match when true, otherwise <code>undefined</code>, in which
									case you should respond with 406 &quot;Not Acceptable&quot;.</p>
								</div>
								<p>The <code>type</code> value may be a single mime type string
									such as &quot;application/json&quot;, the extension name
									such as &quot;json&quot;, a comma-delimited list such as &quot;json, html, text/plain&quot;,
									or an array <code>[&quot;json&quot;, &quot;html&quot;, &quot;text/plain&quot;]</code>. When a list
								or array is given the <em>best</em> match, if any is returned.</p>
								<p>Examples:</p>
								<pre><code><span class="hljs-regexp">//</span> Accept: text/html
req.accepts(<span class="hljs-string">&#x27;html&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;html&quot;</span>

<span class="hljs-regexp">//</span> Accept: text<span class="hljs-regexp">/*, application/</span>json
req.accepts(<span class="hljs-string">&#x27;html&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;html&quot;</span>
req.accepts(<span class="hljs-string">&#x27;text/html&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;text/html&quot;</span>
req.accepts(<span class="hljs-string">&#x27;json, text&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;json&quot;</span>
req.accepts(<span class="hljs-string">&#x27;application/json&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;application/json&quot;</span>

<span class="hljs-regexp">//</span> Accept: text<span class="hljs-regexp">/*, application/</span>json
req.accepts(<span class="hljs-string">&#x27;image/png&#x27;</span>);
req.accepts(<span class="hljs-string">&#x27;png&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; undefined

<span class="hljs-regexp">//</span> Accept: text<span class="hljs-regexp">/*;q=.5, application/</span>json
req.accepts([<span class="hljs-string">&#x27;html&#x27;</span>, <span class="hljs-string">&#x27;json&#x27;</span>]);
req.accepts(<span class="hljs-string">&#x27;html, json&#x27;</span>);
<span class="hljs-regexp">//</span> =&gt; <span class="hljs-string">&quot;json&quot;</span>
</code></pre>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L351">home/runner/work/opine/opine/src/types.ts:351</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>type: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L352">home/runner/work/opine/opine/src/types.ts:352</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>type: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L353">home/runner/work/opine/opine/src/types.ts:353</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5><span class="tsd-flag ts-flagRest">Rest</span> <span class="tsd-signature-symbol">...</span>type: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="acceptscharsets" class="tsd-anchor"></a>
					<h3>accepts<wbr>Charsets</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Charsets<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Charsets<span class="tsd-signature-symbol">(</span>charset<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Charsets<span class="tsd-signature-symbol">(</span>charset<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Charsets<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span>charset<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L362">home/runner/work/opine/opine/src/types.ts:362</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Returns the first accepted charset of the specified character sets,
										based on the request&#39;s Accept-Charset HTTP header field.
									If none of the specified charsets is accepted, returns false.</p>
								</div>
								<p>For more information, or if you have issues or concerns, see accepts.</p>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L363">home/runner/work/opine/opine/src/types.ts:363</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>charset: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L364">home/runner/work/opine/opine/src/types.ts:364</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>charset: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L365">home/runner/work/opine/opine/src/types.ts:365</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5><span class="tsd-flag ts-flagRest">Rest</span> <span class="tsd-signature-symbol">...</span>charset: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="acceptsencodings" class="tsd-anchor"></a>
					<h3>accepts<wbr>Encodings</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Encodings<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Encodings<span class="tsd-signature-symbol">(</span>encoding<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Encodings<span class="tsd-signature-symbol">(</span>encoding<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Encodings<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span>encoding<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L374">home/runner/work/opine/opine/src/types.ts:374</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Returns the first accepted encoding of the specified encodings,
										based on the request&#39;s Accept-Encoding HTTP header field.
									If none of the specified encodings is accepted, returns false.</p>
								</div>
								<p>For more information, or if you have issues or concerns, see accepts.</p>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L375">home/runner/work/opine/opine/src/types.ts:375</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>encoding: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L376">home/runner/work/opine/opine/src/types.ts:376</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>encoding: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L377">home/runner/work/opine/opine/src/types.ts:377</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5><span class="tsd-flag ts-flagRest">Rest</span> <span class="tsd-signature-symbol">...</span>encoding: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="acceptslanguages" class="tsd-anchor"></a>
					<h3>accepts<wbr>Languages</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Languages<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Languages<span class="tsd-signature-symbol">(</span>lang<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Languages<span class="tsd-signature-symbol">(</span>lang<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
						<li class="tsd-signature tsd-kind-icon">accepts<wbr>Languages<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span>lang<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L386">home/runner/work/opine/opine/src/types.ts:386</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Returns the first accepted language of the specified languages,
										based on the request&#39;s Accept-Language HTTP header field.
									If none of the specified languages is accepted, returns false.</p>
								</div>
								<p>For more information, or if you have issues or concerns, see accepts.</p>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L387">home/runner/work/opine/opine/src/types.ts:387</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>lang: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L388">home/runner/work/opine/opine/src/types.ts:388</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>lang: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L389">home/runner/work/opine/opine/src/types.ts:389</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5><span class="tsd-flag ts-flagRest">Rest</span> <span class="tsd-signature-symbol">...</span>lang: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">false</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="is" class="tsd-anchor"></a>
					<h3>is</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">is<span class="tsd-signature-symbol">(</span>type<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L449">home/runner/work/opine/opine/src/types.ts:449</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Check if the incoming request contains the &quot;Content-Type&quot;
									header field, and it contains the give mime <code>type</code>.</p>
								</div>
								<p>Examples:</p>
								<pre><code> // <span class="hljs-keyword">With</span> Content-<span class="hljs-keyword">Type</span>: <span class="hljs-type">text</span>/html; charset=utf<span class="hljs-number">-8</span>
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;html&#x27;</span>);
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;text/html&#x27;</span>);
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;text/*&#x27;</span>);
 // =&gt; <span class="hljs-keyword">true</span>

 // <span class="hljs-keyword">When</span> Content-<span class="hljs-keyword">Type</span> <span class="hljs-keyword">is</span> application/<span class="hljs-type">json</span>
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;json&#x27;</span>);
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;application/json&#x27;</span>);
 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;application/*&#x27;</span>);
 // =&gt; <span class="hljs-keyword">true</span>

 req.<span class="hljs-keyword">is</span>(<span class="hljs-string">&#x27;html&#x27;</span>);
 // =&gt; <span class="hljs-keyword">false</span>
</code></pre>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>type: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">null</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="range" class="tsd-anchor"></a>
					<h3>range</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">range<span class="tsd-signature-symbol">(</span>size<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, options<span class="tsd-signature-symbol">?: </span><a href="_types_.rangeparseroptions.html" class="tsd-signature-type">RangeParserOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="_types_.rangeparserranges.html" class="tsd-signature-type">RangeParserRanges</a><span class="tsd-signature-symbol"> | </span><a href="../modules/_types_.html#rangeparserresult" class="tsd-signature-type">RangeParserResult</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L423">home/runner/work/opine/opine/src/types.ts:423</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Parse Range header field, capping to the given <code>size</code>.</p>
								</div>
								<p>Unspecified ranges such as &quot;0-&quot; require knowledge of your resource length. In
									the case of a byte range this is of course the total number of bytes.
									If the Range header field is not given <code>undefined</code> is returned.
									If the Range header field is given, return value is a result of range-parser.
								See more ./types/range-parser/index.d.ts</p>
								<p>NOTE: remember that ranges are inclusive, so for example &quot;Range: users=0-3&quot;
								should respond with 4 users when available, not 3.</p>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>size: <span class="tsd-signature-type">number</span></h5>
								</li>
								<li>
									<h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <a href="_types_.rangeparseroptions.html" class="tsd-signature-type">RangeParserOptions</a></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="_types_.rangeparserranges.html" class="tsd-signature-type">RangeParserRanges</a><span class="tsd-signature-symbol"> | </span><a href="../modules/_types_.html#rangeparserresult" class="tsd-signature-type">RangeParserResult</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="respond" class="tsd-anchor"></a>
					<h3>respond</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">respond<span class="tsd-signature-symbol">(</span>response<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>body<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Deno.Reader</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ReadableStream</span><span class="tsd-signature-symbol">; </span>headers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">; </span>status<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>statusText<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>trailers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L617">home/runner/work/opine/opine/src/types.ts:617</a></li>
								</ul>
							</aside>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>response: <span class="tsd-signature-symbol">{ </span>body<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Deno.Reader</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ReadableStream</span><span class="tsd-signature-symbol">; </span>headers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">; </span>status<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>statusText<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>trailers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol"> }</span></h5>
									<ul class="tsd-parameters">
										<li class="tsd-parameter">
											<h5><span class="tsd-flag ts-flagOptional">Optional</span> body<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Deno.Reader</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ReadableStream</span></h5>
										</li>
										<li class="tsd-parameter">
											<h5><span class="tsd-flag ts-flagOptional">Optional</span> headers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Headers</span></h5>
										</li>
										<li class="tsd-parameter">
											<h5><span class="tsd-flag ts-flagOptional">Optional</span> status<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5>
										</li>
										<li class="tsd-parameter">
											<h5><span class="tsd-flag ts-flagOptional">Optional</span> status<wbr>Text<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5>
										</li>
										<li class="tsd-parameter">
											<h5><span class="tsd-flag ts-flagOptional">Optional</span> trailers<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Headers</span></h5>
											<ul class="tsd-parameters">
												<li class="tsd-parameter-signature">
													<ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-variable">
														<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Headers</span></li>
													</ul>
													<ul class="tsd-descriptions">
														<li class="tsd-description">
															<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Headers</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Headers</span></h4>
														</li>
													</ul>
												</li>
											</ul>
										</li>
									</ul>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
					<a name="upgrade" class="tsd-anchor"></a>
					<h3>upgrade</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
						<li class="tsd-signature tsd-kind-icon">upgrade<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">WebSocket</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in <a href="https://github.com/cmorten/opine/blob/bc9a2ab/src/types.ts#L468">home/runner/work/opine/opine/src/types.ts:468</a></li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Upgrade an HTTP connection to a WebSocket connection by calling Deno.upgradeWebSocket.</p>
								</div>
								<p>Example:</p>
								<pre><code>app.<span class="hljs-keyword">get</span>(<span class="hljs-string">&quot;/ws&quot;</span>, <span class="hljs-keyword">async</span> (req, _res, next) =&gt; {
  <span class="hljs-keyword">if</span> (req.headers.<span class="hljs-keyword">get</span>(<span class="hljs-string">&quot;upgrade&quot;</span>) === <span class="hljs-string">&quot;websocket&quot;</span>) {
    <span class="hljs-keyword">const</span> socket = req.upgrade();
    handleSocket(socket);
  } <span class="hljs-keyword">else</span> {
    next();
  }
});
</code></pre>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">WebSocket</span></h4>
							<p>A socket object.</p>
						</li>
					</ul>
				</section>
			</section>
		</div>
		<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
			<nav class="tsd-navigation primary">
				<ul>
					<li class="globals  ">
						<a href="../globals.html"><em>Globals</em></a>
					</li>
					<li class="current tsd-kind-module">
						<a href="../modules/_types_.html">&quot;types&quot;</a>
						<ul>
							<li class=" tsd-kind-namespace tsd-parent-kind-module tsd-is-not-exported">
								<a href="../modules/_types_.__global.html">__global</a>
							</li>
						</ul>
					</li>
				</ul>
			</nav>
			<nav class="tsd-navigation secondary menu-sticky">
				<ul class="before-current">
				</ul>
				<ul class="current">
					<li class="current tsd-kind-interface tsd-parent-kind-module tsd-has-type-parameter">
						<a href="_types_.opinerequest.html" class="tsd-kind-icon">Opine<wbr>Request</a>
						<ul>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#_parsedbody" class="tsd-kind-icon">_parsed<wbr>Body</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#_parsedoriginalurl" class="tsd-kind-icon">_parsed<wbr>Original<wbr>Url</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#_parsedurl" class="tsd-kind-icon">_parsed<wbr>Url</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#app" class="tsd-kind-icon">app</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#baseurl" class="tsd-kind-icon">base<wbr>Url</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#body" class="tsd-kind-icon">body</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#conn" class="tsd-kind-icon">conn</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#finalresponse" class="tsd-kind-icon">final<wbr>Response</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#fresh" class="tsd-kind-icon">fresh</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#get" class="tsd-kind-icon">get</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#headers" class="tsd-kind-icon">headers</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#hostname" class="tsd-kind-icon">hostname</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#ip" class="tsd-kind-icon">ip</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#ips" class="tsd-kind-icon">ips</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#method" class="tsd-kind-icon">method</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#next" class="tsd-kind-icon">next</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#originalurl" class="tsd-kind-icon">original<wbr>Url</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#param" class="tsd-kind-icon">param</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#params" class="tsd-kind-icon">params</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#parsedbody" class="tsd-kind-icon">parsed<wbr>Body</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#path" class="tsd-kind-icon">path</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#proto" class="tsd-kind-icon">proto</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#protocol" class="tsd-kind-icon">protocol</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#query" class="tsd-kind-icon">query</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#raw" class="tsd-kind-icon">raw</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#res" class="tsd-kind-icon">res</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#route" class="tsd-kind-icon">route</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#secure" class="tsd-kind-icon">secure</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#stale" class="tsd-kind-icon">stale</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#subdomains" class="tsd-kind-icon">subdomains</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#url" class="tsd-kind-icon">url</a>
							</li>
							<li class=" tsd-kind-property tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#xhr" class="tsd-kind-icon">xhr</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#accepts" class="tsd-kind-icon">accepts</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#acceptscharsets" class="tsd-kind-icon">accepts<wbr>Charsets</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#acceptsencodings" class="tsd-kind-icon">accepts<wbr>Encodings</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#acceptslanguages" class="tsd-kind-icon">accepts<wbr>Languages</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#is" class="tsd-kind-icon">is</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#range" class="tsd-kind-icon">range</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#respond" class="tsd-kind-icon">respond</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-interface">
								<a href="_types_.opinerequest.html#upgrade" class="tsd-kind-icon">upgrade</a>
							</li>
						</ul>
					</li>
				</ul>
				<ul class="after-current">
				</ul>
			</nav>
		</div>
	</div>
</div>
<footer class="with-border-bottom">
	<div class="container">
		<h2>Legend</h2>
		<div class="tsd-legend-group">
			<ul class="tsd-legend">
				<li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li>
				<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
				<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
				<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
				<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
				<li class="tsd-kind-type-alias tsd-has-type-parameter"><span class="tsd-kind-icon">Type alias with type parameter</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
				<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
				<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
			</ul>
		</div>
	</div>
</footer>
<div class="container tsd-generator">
	<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
</body>
</html>